//
// File: FFTImplementationCallback.cpp
//
// MATLAB Coder version            : 5.0
// C/C++ source code generated on  : 08-May-2020 10:27:24
//

// Include Files
#include "FFTImplementationCallback.h"
#include "DeepLearningNetwork.h"
#include "matlabCodegenHandle.h"
#include "rt_nonfinite.h"
#include "streamingClassifier.h"

// Function Definitions

//
// Arguments    : const float x[512]
//                creal32_T y[512]
// Return Type  : void
//
void FFTImplementationCallback::doHalfLengthRadix2(const float x[512], creal32_T
  y[512])
{
  int ix;
  int i;
  int iDelta2;
  static const short bitrevIndex[256] = { 1, 129, 65, 193, 33, 161, 97, 225, 17,
    145, 81, 209, 49, 177, 113, 241, 9, 137, 73, 201, 41, 169, 105, 233, 25, 153,
    89, 217, 57, 185, 121, 249, 5, 133, 69, 197, 37, 165, 101, 229, 21, 149, 85,
    213, 53, 181, 117, 245, 13, 141, 77, 205, 45, 173, 109, 237, 29, 157, 93,
    221, 61, 189, 125, 253, 3, 131, 67, 195, 35, 163, 99, 227, 19, 147, 83, 211,
    51, 179, 115, 243, 11, 139, 75, 203, 43, 171, 107, 235, 27, 155, 91, 219, 59,
    187, 123, 251, 7, 135, 71, 199, 39, 167, 103, 231, 23, 151, 87, 215, 55, 183,
    119, 247, 15, 143, 79, 207, 47, 175, 111, 239, 31, 159, 95, 223, 63, 191,
    127, 255, 2, 130, 66, 194, 34, 162, 98, 226, 18, 146, 82, 210, 50, 178, 114,
    242, 10, 138, 74, 202, 42, 170, 106, 234, 26, 154, 90, 218, 58, 186, 122,
    250, 6, 134, 70, 198, 38, 166, 102, 230, 22, 150, 86, 214, 54, 182, 118, 246,
    14, 142, 78, 206, 46, 174, 110, 238, 30, 158, 94, 222, 62, 190, 126, 254, 4,
    132, 68, 196, 36, 164, 100, 228, 20, 148, 84, 212, 52, 180, 116, 244, 12,
    140, 76, 204, 44, 172, 108, 236, 28, 156, 92, 220, 60, 188, 124, 252, 8, 136,
    72, 200, 40, 168, 104, 232, 24, 152, 88, 216, 56, 184, 120, 248, 16, 144, 80,
    208, 48, 176, 112, 240, 32, 160, 96, 224, 64, 192, 128, 256 };

  float temp_re;
  float temp_im;
  int k;
  int iheight;
  float y_im;
  float y_re;
  float temp2_re;
  int j;
  static const float fv[128] = { 1.0F, 0.999698818F, 0.99879545F, 0.997290432F,
    0.99518472F, 0.992479563F, 0.989176512F, 0.985277653F, 0.980785251F,
    0.975702107F, 0.970031261F, 0.963776052F, 0.956940353F, 0.949528158F,
    0.941544056F, 0.932992816F, 0.923879504F, 0.914209723F, 0.903989315F,
    0.893224299F, 0.881921232F, 0.870086968F, 0.857728601F, 0.84485358F,
    0.831469595F, 0.817584813F, 0.803207517F, 0.78834641F, 0.773010433F,
    0.757208824F, 0.740951121F, 0.724247098F, 0.707106769F, 0.689540565F,
    0.671559F, 0.653172851F, 0.634393334F, 0.615231633F, 0.59569931F,
    0.575808227F, 0.555570245F, 0.534997642F, 0.514102757F, 0.492898226F,
    0.471396744F, 0.449611336F, 0.427555084F, 0.40524134F, 0.382683456F,
    0.359895051F, 0.336889863F, 0.313681751F, 0.290284663F, 0.266712785F,
    0.242980197F, 0.219101235F, 0.195090324F, 0.170961902F, 0.146730468F,
    0.122410677F, 0.0980171412F, 0.0735645667F, 0.0490676761F, 0.024541229F,
    0.0F, -0.024541229F, -0.0490676761F, -0.0735645667F, -0.0980171412F,
    -0.122410677F, -0.146730468F, -0.170961902F, -0.195090324F, -0.219101235F,
    -0.242980197F, -0.266712785F, -0.290284663F, -0.313681751F, -0.336889863F,
    -0.359895051F, -0.382683456F, -0.40524134F, -0.427555084F, -0.449611336F,
    -0.471396744F, -0.492898226F, -0.514102757F, -0.534997642F, -0.555570245F,
    -0.575808227F, -0.59569931F, -0.615231633F, -0.634393334F, -0.653172851F,
    -0.671559F, -0.689540565F, -0.707106769F, -0.724247098F, -0.740951121F,
    -0.757208824F, -0.773010433F, -0.78834641F, -0.803207517F, -0.817584813F,
    -0.831469595F, -0.84485358F, -0.857728601F, -0.870086968F, -0.881921232F,
    -0.893224299F, -0.903989315F, -0.914209723F, -0.923879504F, -0.932992816F,
    -0.941544056F, -0.949528158F, -0.956940353F, -0.963776052F, -0.970031261F,
    -0.975702107F, -0.980785251F, -0.985277653F, -0.989176512F, -0.992479563F,
    -0.99518472F, -0.997290432F, -0.99879545F, -0.999698818F };

  float temp2_im;
  static const float fv1[128] = { 0.0F, -0.024541229F, -0.0490676761F,
    -0.0735645667F, -0.0980171412F, -0.122410677F, -0.146730468F, -0.170961902F,
    -0.195090324F, -0.219101235F, -0.242980197F, -0.266712785F, -0.290284663F,
    -0.313681751F, -0.336889863F, -0.359895051F, -0.382683456F, -0.40524134F,
    -0.427555084F, -0.449611336F, -0.471396744F, -0.492898226F, -0.514102757F,
    -0.534997642F, -0.555570245F, -0.575808227F, -0.59569931F, -0.615231633F,
    -0.634393334F, -0.653172851F, -0.671559F, -0.689540565F, -0.707106769F,
    -0.724247098F, -0.740951121F, -0.757208824F, -0.773010433F, -0.78834641F,
    -0.803207517F, -0.817584813F, -0.831469595F, -0.84485358F, -0.857728601F,
    -0.870086968F, -0.881921232F, -0.893224299F, -0.903989315F, -0.914209723F,
    -0.923879504F, -0.932992816F, -0.941544056F, -0.949528158F, -0.956940353F,
    -0.963776052F, -0.970031261F, -0.975702107F, -0.980785251F, -0.985277653F,
    -0.989176512F, -0.992479563F, -0.99518472F, -0.997290432F, -0.99879545F,
    -0.999698818F, -1.0F, -0.999698818F, -0.99879545F, -0.997290432F,
    -0.99518472F, -0.992479563F, -0.989176512F, -0.985277653F, -0.980785251F,
    -0.975702107F, -0.970031261F, -0.963776052F, -0.956940353F, -0.949528158F,
    -0.941544056F, -0.932992816F, -0.923879504F, -0.914209723F, -0.903989315F,
    -0.893224299F, -0.881921232F, -0.870086968F, -0.857728601F, -0.84485358F,
    -0.831469595F, -0.817584813F, -0.803207517F, -0.78834641F, -0.773010433F,
    -0.757208824F, -0.740951121F, -0.724247098F, -0.707106769F, -0.689540565F,
    -0.671559F, -0.653172851F, -0.634393334F, -0.615231633F, -0.59569931F,
    -0.575808227F, -0.555570245F, -0.534997642F, -0.514102757F, -0.492898226F,
    -0.471396744F, -0.449611336F, -0.427555084F, -0.40524134F, -0.382683456F,
    -0.359895051F, -0.336889863F, -0.313681751F, -0.290284663F, -0.266712785F,
    -0.242980197F, -0.219101235F, -0.195090324F, -0.170961902F, -0.146730468F,
    -0.122410677F, -0.0980171412F, -0.0735645667F, -0.0490676761F, -0.024541229F
  };

  static const short b_iv[256] = { 1, 256, 255, 254, 253, 252, 251, 250, 249,
    248, 247, 246, 245, 244, 243, 242, 241, 240, 239, 238, 237, 236, 235, 234,
    233, 232, 231, 230, 229, 228, 227, 226, 225, 224, 223, 222, 221, 220, 219,
    218, 217, 216, 215, 214, 213, 212, 211, 210, 209, 208, 207, 206, 205, 204,
    203, 202, 201, 200, 199, 198, 197, 196, 195, 194, 193, 192, 191, 190, 189,
    188, 187, 186, 185, 184, 183, 182, 181, 180, 179, 178, 177, 176, 175, 174,
    173, 172, 171, 170, 169, 168, 167, 166, 165, 164, 163, 162, 161, 160, 159,
    158, 157, 156, 155, 154, 153, 152, 151, 150, 149, 148, 147, 146, 145, 144,
    143, 142, 141, 140, 139, 138, 137, 136, 135, 134, 133, 132, 131, 130, 129,
    128, 127, 126, 125, 124, 123, 122, 121, 120, 119, 118, 117, 116, 115, 114,
    113, 112, 111, 110, 109, 108, 107, 106, 105, 104, 103, 102, 101, 100, 99, 98,
    97, 96, 95, 94, 93, 92, 91, 90, 89, 88, 87, 86, 85, 84, 83, 82, 81, 80, 79,
    78, 77, 76, 75, 74, 73, 72, 71, 70, 69, 68, 67, 66, 65, 64, 63, 62, 61, 60,
    59, 58, 57, 56, 55, 54, 53, 52, 51, 50, 49, 48, 47, 46, 45, 44, 43, 42, 41,
    40, 39, 38, 37, 36, 35, 34, 33, 32, 31, 30, 29, 28, 27, 26, 25, 24, 23, 22,
    21, 20, 19, 18, 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2 };

  static const creal32_T reconVar1[256] = { { 1.0F,// re
      -1.0F                            // im
    }, { 0.987728477F,                 // re
      -0.999924719F                    // im
    }, { 0.975458741F,                 // re
      -0.999698818F                    // im
    }, { 0.963192761F,                 // re
      -0.999322414F                    // im
    }, { 0.950932324F,                 // re
      -0.99879545F                     // im
    }, { 0.938679278F,                 // re
      -0.998118103F                    // im
    }, { 0.926435411F,                 // re
      -0.997290432F                    // im
    }, { 0.91420269F,                  // re
      -0.996312618F                    // im
    }, { 0.901982844F,                 // re
      -0.99518472F                     // im
    }, { 0.88977778F,                  // re
      -0.993907F                       // im
    }, { 0.877589345F,                 // re
      -0.992479563F                    // im
    }, { 0.865419269F,                 // re
      -0.990902662F                    // im
    }, { 0.853269517F,                 // re
      -0.989176512F                    // im
    }, { 0.84114182F,                  // re
      -0.987301409F                    // im
    }, { 0.829038084F,                 // re
      -0.985277653F                    // im
    }, { 0.816960096F,                 // re
      -0.983105481F                    // im
    }, { 0.804909706F,                 // re
      -0.980785251F                    // im
    }, { 0.792888641F,                 // re
      -0.97831738F                     // im
    }, { 0.78089875F,                  // re
      -0.975702107F                    // im
    }, { 0.768941879F,                 // re
      -0.972939968F                    // im
    }, { 0.757019818F,                 // re
      -0.970031261F                    // im
    }, { 0.745134354F,                 // re
      -0.966976464F                    // im
    }, { 0.733287215F,                 // re
      -0.963776052F                    // im
    }, { 0.72148031F,                  // re
      -0.960430503F                    // im
    }, { 0.709715366F,                 // re
      -0.956940353F                    // im
    }, { 0.697994053F,                 // re
      -0.953306F                       // im
    }, { 0.686318278F,                 // re
      -0.949528158F                    // im
    }, { 0.674689651F,                 // re
      -0.945607305F                    // im
    }, { 0.663110137F,                 // re
      -0.941544056F                    // im
    }, { 0.651581287F,                 // re
      -0.937339F                       // im
    }, { 0.640104949F,                 // re
      -0.932992816F                    // im
    }, { 0.628682792F,                 // re
      -0.928506076F                    // im
    }, { 0.617316544F,                 // re
      -0.923879504F                    // im
    }, { 0.606007934F,                 // re
      -0.919113874F                    // im
    }, { 0.59475863F,                  // re
      -0.914209723F                    // im
    }, { 0.583570421F,                 // re
      -0.909167945F                    // im
    }, { 0.572444916F,                 // re
      -0.903989315F                    // im
    }, { 0.561383724F,                 // re
      -0.898674488F                    // im
    }, { 0.550388694F,                 // re
      -0.893224299F                    // im
    }, { 0.539461255F,                 // re
      -0.887639642F                    // im
    }, { 0.528603256F,                 // re
      -0.881921232F                    // im
    }, { 0.517816246F,                 // re
      -0.876070082F                    // im
    }, { 0.507101774F,                 // re
      -0.870086968F                    // im
    }, { 0.49646163F,                  // re
      -0.863972843F                    // im
    }, { 0.485897243F,                 // re
      -0.857728601F                    // im
    }, { 0.475410283F,                 // re
      -0.851355195F                    // im
    }, { 0.465002358F,                 // re
      -0.84485358F                     // im
    }, { 0.454674959F,                 // re
      -0.838224709F                    // im
    }, { 0.444429755F,                 // re
      -0.831469595F                    // im
    }, { 0.434268177F,                 // re
      -0.824589252F                    // im
    }, { 0.424191773F,                 // re
      -0.817584813F                    // im
    }, { 0.414202094F,                 // re
      -0.81045717F                     // im
    }, { 0.40430069F,                  // re
      -0.803207517F                    // im
    }, { 0.394489F,                    // re
      -0.795836926F                    // im
    }, { 0.384768367F,                 // re
      -0.78834641F                     // im
    }, { 0.375140488F,                 // re
      -0.780737221F                    // im
    }, { 0.365606666F,                 // re
      -0.773010433F                    // im
    }, { 0.356168449F,                 // re
      -0.765167236F                    // im
    }, { 0.346827149F,                 // re
      -0.757208824F                    // im
    }, { 0.337584198F,                 // re
      -0.749136388F                    // im
    }, { 0.328441024F,                 // re
      -0.740951121F                    // im
    }, { 0.319399F,                    // re
      -0.732654274F                    // im
    }, { 0.310459435F,                 // re
      -0.724247098F                    // im
    }, { 0.301623702F,                 // re
      -0.715730786F                    // im
    }, { 0.292893231F,                 // re
      -0.707106769F                    // im
    }, { 0.284269214F,                 // re
      -0.698376298F                    // im
    }, { 0.275752902F,                 // re
      -0.689540565F                    // im
    }, { 0.267345726F,                 // re
      -0.680601F                       // im
    }, { 0.259048879F,                 // re
      -0.671559F                       // im
    }, { 0.250863612F,                 // re
      -0.662415802F                    // im
    }, { 0.242791176F,                 // re
      -0.653172851F                    // im
    }, { 0.234832764F,                 // re
      -0.643831551F                    // im
    }, { 0.226989567F,                 // re
      -0.634393334F                    // im
    }, { 0.219262779F,                 // re
      -0.624859512F                    // im
    }, { 0.21165359F,                  // re
      -0.615231633F                    // im
    }, { 0.204163074F,                 // re
      -0.605511F                       // im
    }, { 0.196792483F,                 // re
      -0.59569931F                     // im
    }, { 0.18954283F,                  // re
      -0.585797906F                    // im
    }, { 0.182415187F,                 // re
      -0.575808227F                    // im
    }, { 0.175410748F,                 // re
      -0.565731823F                    // im
    }, { 0.168530405F,                 // re
      -0.555570245F                    // im
    }, { 0.161775291F,                 // re
      -0.545325041F                    // im
    }, { 0.15514642F,                  // re
      -0.534997642F                    // im
    }, { 0.148644805F,                 // re
      -0.524589717F                    // im
    }, { 0.142271399F,                 // re
      -0.514102757F                    // im
    }, { 0.136027157F,                 // re
      -0.50353837F                     // im
    }, { 0.129913032F,                 // re
      -0.492898226F                    // im
    }, { 0.123929918F,                 // re
      -0.482183754F                    // im
    }, { 0.118078768F,                 // re
      -0.471396744F                    // im
    }, { 0.112360358F,                 // re
      -0.460538715F                    // im
    }, { 0.106775701F,                 // re
      -0.449611336F                    // im
    }, { 0.101325512F,                 // re
      -0.438616246F                    // im
    }, { 0.096010685F,                 // re
      -0.427555084F                    // im
    }, { 0.0908320546F,                // re
      -0.416429579F                    // im
    }, { 0.0857902765F,                // re
      -0.40524134F                     // im
    }, { 0.0808861256F,                // re
      -0.393992066F                    // im
    }, { 0.0761204958F,                // re
      -0.382683456F                    // im
    }, { 0.0714939237F,                // re
      -0.371317208F                    // im
    }, { 0.067007184F,                 // re
      -0.359895051F                    // im
    }, { 0.0626609921F,                // re
      -0.348418683F                    // im
    }, { 0.0584559441F,                // re
      -0.336889863F                    // im
    }, { 0.0543926954F,                // re
      -0.32531032F                     // im
    }, { 0.0504718423F,                // re
      -0.313681751F                    // im
    }, { 0.0466939807F,                // re
      -0.302005947F                    // im
    }, { 0.0430596471F,                // re
      -0.290284663F                    // im
    }, { 0.0395694971F,                // re
      -0.27851969F                     // im
    }, { 0.036223948F,                 // re
      -0.266712785F                    // im
    }, { 0.0330235362F,                // re
      -0.254865676F                    // im
    }, { 0.0299687386F,                // re
      -0.242980197F                    // im
    }, { 0.0270600319F,                // re
      -0.231058121F                    // im
    }, { 0.024297893F,                 // re
      -0.219101235F                    // im
    }, { 0.02168262F,                  // re
      -0.207111388F                    // im
    }, { 0.0192147493F,                // re
      -0.195090324F                    // im
    }, { 0.0168945193F,                // re
      -0.183039889F                    // im
    }, { 0.0147223473F,                // re
      -0.170961902F                    // im
    }, { 0.0126985908F,                // re
      -0.15885815F                     // im
    }, { 0.0108234882F,                // re
      -0.146730468F                    // im
    }, { 0.00909733772F,               // re
      -0.134580716F                    // im
    }, { 0.00752043724F,               // re
      -0.122410677F                    // im
    }, { 0.00609302521F,               // re
      -0.110222206F                    // im
    }, { 0.00481528044F,               // re
      -0.0980171412F                   // im
    }, { 0.00368738174F,               // re
      -0.0857973173F                   // im
    }, { 0.00270956755F,               // re
      -0.0735645667F                   // im
    }, { 0.00188189745F,               // re
      -0.0613207407F                   // im
    }, { 0.00120455027F,               // re
      -0.0490676761F                   // im
    }, { 0.000677585602F,              // re
      -0.0368072242F                   // im
    }, { 0.00030118227F,               // re
      -0.024541229F                    // im
    }, { 7.52806664E-5F,               // re
      -0.0122715384F                   // im
    }, { 0.0F,                         // re
      -0.0F                            // im
    }, { 7.52806664E-5F,               // re
      0.0122715384F                    // im
    }, { 0.00030118227F,               // re
      0.024541229F                     // im
    }, { 0.000677585602F,              // re
      0.0368072242F                    // im
    }, { 0.00120455027F,               // re
      0.0490676761F                    // im
    }, { 0.00188189745F,               // re
      0.0613207407F                    // im
    }, { 0.00270956755F,               // re
      0.0735645667F                    // im
    }, { 0.00368738174F,               // re
      0.0857973173F                    // im
    }, { 0.00481528044F,               // re
      0.0980171412F                    // im
    }, { 0.00609302521F,               // re
      0.110222206F                     // im
    }, { 0.00752043724F,               // re
      0.122410677F                     // im
    }, { 0.00909733772F,               // re
      0.134580716F                     // im
    }, { 0.0108234882F,                // re
      0.146730468F                     // im
    }, { 0.0126985908F,                // re
      0.15885815F                      // im
    }, { 0.0147223473F,                // re
      0.170961902F                     // im
    }, { 0.0168945193F,                // re
      0.183039889F                     // im
    }, { 0.0192147493F,                // re
      0.195090324F                     // im
    }, { 0.02168262F,                  // re
      0.207111388F                     // im
    }, { 0.024297893F,                 // re
      0.219101235F                     // im
    }, { 0.0270600319F,                // re
      0.231058121F                     // im
    }, { 0.0299687386F,                // re
      0.242980197F                     // im
    }, { 0.0330235362F,                // re
      0.254865676F                     // im
    }, { 0.036223948F,                 // re
      0.266712785F                     // im
    }, { 0.0395694971F,                // re
      0.27851969F                      // im
    }, { 0.0430596471F,                // re
      0.290284663F                     // im
    }, { 0.0466939807F,                // re
      0.302005947F                     // im
    }, { 0.0504718423F,                // re
      0.313681751F                     // im
    }, { 0.0543926954F,                // re
      0.32531032F                      // im
    }, { 0.0584559441F,                // re
      0.336889863F                     // im
    }, { 0.0626609921F,                // re
      0.348418683F                     // im
    }, { 0.067007184F,                 // re
      0.359895051F                     // im
    }, { 0.0714939237F,                // re
      0.371317208F                     // im
    }, { 0.0761204958F,                // re
      0.382683456F                     // im
    }, { 0.0808861256F,                // re
      0.393992066F                     // im
    }, { 0.0857902765F,                // re
      0.40524134F                      // im
    }, { 0.0908320546F,                // re
      0.416429579F                     // im
    }, { 0.096010685F,                 // re
      0.427555084F                     // im
    }, { 0.101325512F,                 // re
      0.438616246F                     // im
    }, { 0.106775701F,                 // re
      0.449611336F                     // im
    }, { 0.112360358F,                 // re
      0.460538715F                     // im
    }, { 0.118078768F,                 // re
      0.471396744F                     // im
    }, { 0.123929918F,                 // re
      0.482183754F                     // im
    }, { 0.129913032F,                 // re
      0.492898226F                     // im
    }, { 0.136027157F,                 // re
      0.50353837F                      // im
    }, { 0.142271399F,                 // re
      0.514102757F                     // im
    }, { 0.148644805F,                 // re
      0.524589717F                     // im
    }, { 0.15514642F,                  // re
      0.534997642F                     // im
    }, { 0.161775291F,                 // re
      0.545325041F                     // im
    }, { 0.168530405F,                 // re
      0.555570245F                     // im
    }, { 0.175410748F,                 // re
      0.565731823F                     // im
    }, { 0.182415187F,                 // re
      0.575808227F                     // im
    }, { 0.18954283F,                  // re
      0.585797906F                     // im
    }, { 0.196792483F,                 // re
      0.59569931F                      // im
    }, { 0.204163074F,                 // re
      0.605511F                        // im
    }, { 0.21165359F,                  // re
      0.615231633F                     // im
    }, { 0.219262779F,                 // re
      0.624859512F                     // im
    }, { 0.226989567F,                 // re
      0.634393334F                     // im
    }, { 0.234832764F,                 // re
      0.643831551F                     // im
    }, { 0.242791176F,                 // re
      0.653172851F                     // im
    }, { 0.250863612F,                 // re
      0.662415802F                     // im
    }, { 0.259048879F,                 // re
      0.671559F                        // im
    }, { 0.267345726F,                 // re
      0.680601F                        // im
    }, { 0.275752902F,                 // re
      0.689540565F                     // im
    }, { 0.284269214F,                 // re
      0.698376298F                     // im
    }, { 0.292893231F,                 // re
      0.707106769F                     // im
    }, { 0.301623702F,                 // re
      0.715730786F                     // im
    }, { 0.310459435F,                 // re
      0.724247098F                     // im
    }, { 0.319399F,                    // re
      0.732654274F                     // im
    }, { 0.328441024F,                 // re
      0.740951121F                     // im
    }, { 0.337584198F,                 // re
      0.749136388F                     // im
    }, { 0.346827149F,                 // re
      0.757208824F                     // im
    }, { 0.356168449F,                 // re
      0.765167236F                     // im
    }, { 0.365606666F,                 // re
      0.773010433F                     // im
    }, { 0.375140488F,                 // re
      0.780737221F                     // im
    }, { 0.384768367F,                 // re
      0.78834641F                      // im
    }, { 0.394489F,                    // re
      0.795836926F                     // im
    }, { 0.40430069F,                  // re
      0.803207517F                     // im
    }, { 0.414202094F,                 // re
      0.81045717F                      // im
    }, { 0.424191773F,                 // re
      0.817584813F                     // im
    }, { 0.434268177F,                 // re
      0.824589252F                     // im
    }, { 0.444429755F,                 // re
      0.831469595F                     // im
    }, { 0.454674959F,                 // re
      0.838224709F                     // im
    }, { 0.465002358F,                 // re
      0.84485358F                      // im
    }, { 0.475410283F,                 // re
      0.851355195F                     // im
    }, { 0.485897243F,                 // re
      0.857728601F                     // im
    }, { 0.49646163F,                  // re
      0.863972843F                     // im
    }, { 0.507101774F,                 // re
      0.870086968F                     // im
    }, { 0.517816246F,                 // re
      0.876070082F                     // im
    }, { 0.528603256F,                 // re
      0.881921232F                     // im
    }, { 0.539461255F,                 // re
      0.887639642F                     // im
    }, { 0.550388694F,                 // re
      0.893224299F                     // im
    }, { 0.561383724F,                 // re
      0.898674488F                     // im
    }, { 0.572444916F,                 // re
      0.903989315F                     // im
    }, { 0.583570421F,                 // re
      0.909167945F                     // im
    }, { 0.59475863F,                  // re
      0.914209723F                     // im
    }, { 0.606007934F,                 // re
      0.919113874F                     // im
    }, { 0.617316544F,                 // re
      0.923879504F                     // im
    }, { 0.628682792F,                 // re
      0.928506076F                     // im
    }, { 0.640104949F,                 // re
      0.932992816F                     // im
    }, { 0.651581287F,                 // re
      0.937339F                        // im
    }, { 0.663110137F,                 // re
      0.941544056F                     // im
    }, { 0.674689651F,                 // re
      0.945607305F                     // im
    }, { 0.686318278F,                 // re
      0.949528158F                     // im
    }, { 0.697994053F,                 // re
      0.953306F                        // im
    }, { 0.709715366F,                 // re
      0.956940353F                     // im
    }, { 0.72148031F,                  // re
      0.960430503F                     // im
    }, { 0.733287215F,                 // re
      0.963776052F                     // im
    }, { 0.745134354F,                 // re
      0.966976464F                     // im
    }, { 0.757019818F,                 // re
      0.970031261F                     // im
    }, { 0.768941879F,                 // re
      0.972939968F                     // im
    }, { 0.78089875F,                  // re
      0.975702107F                     // im
    }, { 0.792888641F,                 // re
      0.97831738F                      // im
    }, { 0.804909706F,                 // re
      0.980785251F                     // im
    }, { 0.816960096F,                 // re
      0.983105481F                     // im
    }, { 0.829038084F,                 // re
      0.985277653F                     // im
    }, { 0.84114182F,                  // re
      0.987301409F                     // im
    }, { 0.853269517F,                 // re
      0.989176512F                     // im
    }, { 0.865419269F,                 // re
      0.990902662F                     // im
    }, { 0.877589345F,                 // re
      0.992479563F                     // im
    }, { 0.88977778F,                  // re
      0.993907F                        // im
    }, { 0.901982844F,                 // re
      0.99518472F                      // im
    }, { 0.91420269F,                  // re
      0.996312618F                     // im
    }, { 0.926435411F,                 // re
      0.997290432F                     // im
    }, { 0.938679278F,                 // re
      0.998118103F                     // im
    }, { 0.950932324F,                 // re
      0.99879545F                      // im
    }, { 0.963192761F,                 // re
      0.999322414F                     // im
    }, { 0.975458741F,                 // re
      0.999698818F                     // im
    }, { 0.987728477F,                 // re
      0.999924719F                     // im
    } };

  static const creal32_T reconVar2[256] = { { 1.0F,// re
      1.0F                             // im
    }, { 1.01227152F,                  // re
      0.999924719F                     // im
    }, { 1.02454126F,                  // re
      0.999698818F                     // im
    }, { 1.03680718F,                  // re
      0.999322414F                     // im
    }, { 1.04906774F,                  // re
      0.99879545F                      // im
    }, { 1.06132078F,                  // re
      0.998118103F                     // im
    }, { 1.07356453F,                  // re
      0.997290432F                     // im
    }, { 1.08579731F,                  // re
      0.996312618F                     // im
    }, { 1.0980171F,                   // re
      0.99518472F                      // im
    }, { 1.11022222F,                  // re
      0.993907F                        // im
    }, { 1.12241066F,                  // re
      0.992479563F                     // im
    }, { 1.13458073F,                  // re
      0.990902662F                     // im
    }, { 1.14673042F,                  // re
      0.989176512F                     // im
    }, { 1.15885818F,                  // re
      0.987301409F                     // im
    }, { 1.17096186F,                  // re
      0.985277653F                     // im
    }, { 1.1830399F,                   // re
      0.983105481F                     // im
    }, { 1.19509029F,                  // re
      0.980785251F                     // im
    }, { 1.20711136F,                  // re
      0.97831738F                      // im
    }, { 1.21910119F,                  // re
      0.975702107F                     // im
    }, { 1.23105812F,                  // re
      0.972939968F                     // im
    }, { 1.24298024F,                  // re
      0.970031261F                     // im
    }, { 1.25486565F,                  // re
      0.966976464F                     // im
    }, { 1.26671278F,                  // re
      0.963776052F                     // im
    }, { 1.27851963F,                  // re
      0.960430503F                     // im
    }, { 1.29028463F,                  // re
      0.956940353F                     // im
    }, { 1.30200601F,                  // re
      0.953306F                        // im
    }, { 1.31368172F,                  // re
      0.949528158F                     // im
    }, { 1.32531035F,                  // re
      0.945607305F                     // im
    }, { 1.33688986F,                  // re
      0.941544056F                     // im
    }, { 1.34841871F,                  // re
      0.937339F                        // im
    }, { 1.35989499F,                  // re
      0.932992816F                     // im
    }, { 1.37131715F,                  // re
      0.928506076F                     // im
    }, { 1.38268352F,                  // re
      0.923879504F                     // im
    }, { 1.39399207F,                  // re
      0.919113874F                     // im
    }, { 1.40524137F,                  // re
      0.914209723F                     // im
    }, { 1.41642952F,                  // re
      0.909167945F                     // im
    }, { 1.42755508F,                  // re
      0.903989315F                     // im
    }, { 1.43861628F,                  // re
      0.898674488F                     // im
    }, { 1.44961131F,                  // re
      0.893224299F                     // im
    }, { 1.46053874F,                  // re
      0.887639642F                     // im
    }, { 1.47139668F,                  // re
      0.881921232F                     // im
    }, { 1.48218369F,                  // re
      0.876070082F                     // im
    }, { 1.49289823F,                  // re
      0.870086968F                     // im
    }, { 1.50353837F,                  // re
      0.863972843F                     // im
    }, { 1.5141027F,                   // re
      0.857728601F                     // im
    }, { 1.52458978F,                  // re
      0.851355195F                     // im
    }, { 1.5349977F,                   // re
      0.84485358F                      // im
    }, { 1.54532504F,                  // re
      0.838224709F                     // im
    }, { 1.55557024F,                  // re
      0.831469595F                     // im
    }, { 1.56573176F,                  // re
      0.824589252F                     // im
    }, { 1.57580829F,                  // re
      0.817584813F                     // im
    }, { 1.58579791F,                  // re
      0.81045717F                      // im
    }, { 1.59569931F,                  // re
      0.803207517F                     // im
    }, { 1.60551095F,                  // re
      0.795836926F                     // im
    }, { 1.61523163F,                  // re
      0.78834641F                      // im
    }, { 1.62485957F,                  // re
      0.780737221F                     // im
    }, { 1.63439333F,                  // re
      0.773010433F                     // im
    }, { 1.64383149F,                  // re
      0.765167236F                     // im
    }, { 1.65317285F,                  // re
      0.757208824F                     // im
    }, { 1.66241574F,                  // re
      0.749136388F                     // im
    }, { 1.67155898F,                  // re
      0.740951121F                     // im
    }, { 1.680601F,                    // re
      0.732654274F                     // im
    }, { 1.68954062F,                  // re
      0.724247098F                     // im
    }, { 1.6983763F,                   // re
      0.715730786F                     // im
    }, { 1.70710683F,                  // re
      0.707106769F                     // im
    }, { 1.71573079F,                  // re
      0.698376298F                     // im
    }, { 1.7242471F,                   // re
      0.689540565F                     // im
    }, { 1.73265433F,                  // re
      0.680601F                        // im
    }, { 1.74095106F,                  // re
      0.671559F                        // im
    }, { 1.74913645F,                  // re
      0.662415802F                     // im
    }, { 1.75720882F,                  // re
      0.653172851F                     // im
    }, { 1.76516724F,                  // re
      0.643831551F                     // im
    }, { 1.77301049F,                  // re
      0.634393334F                     // im
    }, { 1.78073716F,                  // re
      0.624859512F                     // im
    }, { 1.78834641F,                  // re
      0.615231633F                     // im
    }, { 1.79583693F,                  // re
      0.605511F                        // im
    }, { 1.80320752F,                  // re
      0.59569931F                      // im
    }, { 1.81045723F,                  // re
      0.585797906F                     // im
    }, { 1.81758475F,                  // re
      0.575808227F                     // im
    }, { 1.82458925F,                  // re
      0.565731823F                     // im
    }, { 1.83146954F,                  // re
      0.555570245F                     // im
    }, { 1.83822465F,                  // re
      0.545325041F                     // im
    }, { 1.84485364F,                  // re
      0.534997642F                     // im
    }, { 1.8513552F,                   // re
      0.524589717F                     // im
    }, { 1.8577286F,                   // re
      0.514102757F                     // im
    }, { 1.8639729F,                   // re
      0.50353837F                      // im
    }, { 1.87008691F,                  // re
      0.492898226F                     // im
    }, { 1.87607F,                     // re
      0.482183754F                     // im
    }, { 1.88192129F,                  // re
      0.471396744F                     // im
    }, { 1.88763964F,                  // re
      0.460538715F                     // im
    }, { 1.89322424F,                  // re
      0.449611336F                     // im
    }, { 1.89867449F,                  // re
      0.438616246F                     // im
    }, { 1.90398932F,                  // re
      0.427555084F                     // im
    }, { 1.909168F,                    // re
      0.416429579F                     // im
    }, { 1.91420972F,                  // re
      0.40524134F                      // im
    }, { 1.91911387F,                  // re
      0.393992066F                     // im
    }, { 1.9238795F,                   // re
      0.382683456F                     // im
    }, { 1.92850614F,                  // re
      0.371317208F                     // im
    }, { 1.93299282F,                  // re
      0.359895051F                     // im
    }, { 1.93733907F,                  // re
      0.348418683F                     // im
    }, { 1.94154406F,                  // re
      0.336889863F                     // im
    }, { 1.9456073F,                   // re
      0.32531032F                      // im
    }, { 1.94952822F,                  // re
      0.313681751F                     // im
    }, { 1.95330596F,                  // re
      0.302005947F                     // im
    }, { 1.95694041F,                  // re
      0.290284663F                     // im
    }, { 1.9604305F,                   // re
      0.27851969F                      // im
    }, { 1.96377611F,                  // re
      0.266712785F                     // im
    }, { 1.9669764F,                   // re
      0.254865676F                     // im
    }, { 1.97003126F,                  // re
      0.242980197F                     // im
    }, { 1.97294F,                     // re
      0.231058121F                     // im
    }, { 1.97570205F,                  // re
      0.219101235F                     // im
    }, { 1.97831738F,                  // re
      0.207111388F                     // im
    }, { 1.98078525F,                  // re
      0.195090324F                     // im
    }, { 1.98310542F,                  // re
      0.183039889F                     // im
    }, { 1.98527765F,                  // re
      0.170961902F                     // im
    }, { 1.98730135F,                  // re
      0.15885815F                      // im
    }, { 1.98917651F,                  // re
      0.146730468F                     // im
    }, { 1.99090266F,                  // re
      0.134580716F                     // im
    }, { 1.99247956F,                  // re
      0.122410677F                     // im
    }, { 1.99390697F,                  // re
      0.110222206F                     // im
    }, { 1.99518466F,                  // re
      0.0980171412F                    // im
    }, { 1.99631262F,                  // re
      0.0857973173F                    // im
    }, { 1.99729037F,                  // re
      0.0735645667F                    // im
    }, { 1.99811816F,                  // re
      0.0613207407F                    // im
    }, { 1.99879551F,                  // re
      0.0490676761F                    // im
    }, { 1.99932241F,                  // re
      0.0368072242F                    // im
    }, { 1.99969888F,                  // re
      0.024541229F                     // im
    }, { 1.99992466F,                  // re
      0.0122715384F                    // im
    }, { 2.0F,                         // re
      0.0F                             // im
    }, { 1.99992466F,                  // re
      -0.0122715384F                   // im
    }, { 1.99969888F,                  // re
      -0.024541229F                    // im
    }, { 1.99932241F,                  // re
      -0.0368072242F                   // im
    }, { 1.99879551F,                  // re
      -0.0490676761F                   // im
    }, { 1.99811816F,                  // re
      -0.0613207407F                   // im
    }, { 1.99729037F,                  // re
      -0.0735645667F                   // im
    }, { 1.99631262F,                  // re
      -0.0857973173F                   // im
    }, { 1.99518466F,                  // re
      -0.0980171412F                   // im
    }, { 1.99390697F,                  // re
      -0.110222206F                    // im
    }, { 1.99247956F,                  // re
      -0.122410677F                    // im
    }, { 1.99090266F,                  // re
      -0.134580716F                    // im
    }, { 1.98917651F,                  // re
      -0.146730468F                    // im
    }, { 1.98730135F,                  // re
      -0.15885815F                     // im
    }, { 1.98527765F,                  // re
      -0.170961902F                    // im
    }, { 1.98310542F,                  // re
      -0.183039889F                    // im
    }, { 1.98078525F,                  // re
      -0.195090324F                    // im
    }, { 1.97831738F,                  // re
      -0.207111388F                    // im
    }, { 1.97570205F,                  // re
      -0.219101235F                    // im
    }, { 1.97294F,                     // re
      -0.231058121F                    // im
    }, { 1.97003126F,                  // re
      -0.242980197F                    // im
    }, { 1.9669764F,                   // re
      -0.254865676F                    // im
    }, { 1.96377611F,                  // re
      -0.266712785F                    // im
    }, { 1.9604305F,                   // re
      -0.27851969F                     // im
    }, { 1.95694041F,                  // re
      -0.290284663F                    // im
    }, { 1.95330596F,                  // re
      -0.302005947F                    // im
    }, { 1.94952822F,                  // re
      -0.313681751F                    // im
    }, { 1.9456073F,                   // re
      -0.32531032F                     // im
    }, { 1.94154406F,                  // re
      -0.336889863F                    // im
    }, { 1.93733907F,                  // re
      -0.348418683F                    // im
    }, { 1.93299282F,                  // re
      -0.359895051F                    // im
    }, { 1.92850614F,                  // re
      -0.371317208F                    // im
    }, { 1.9238795F,                   // re
      -0.382683456F                    // im
    }, { 1.91911387F,                  // re
      -0.393992066F                    // im
    }, { 1.91420972F,                  // re
      -0.40524134F                     // im
    }, { 1.909168F,                    // re
      -0.416429579F                    // im
    }, { 1.90398932F,                  // re
      -0.427555084F                    // im
    }, { 1.89867449F,                  // re
      -0.438616246F                    // im
    }, { 1.89322424F,                  // re
      -0.449611336F                    // im
    }, { 1.88763964F,                  // re
      -0.460538715F                    // im
    }, { 1.88192129F,                  // re
      -0.471396744F                    // im
    }, { 1.87607F,                     // re
      -0.482183754F                    // im
    }, { 1.87008691F,                  // re
      -0.492898226F                    // im
    }, { 1.8639729F,                   // re
      -0.50353837F                     // im
    }, { 1.8577286F,                   // re
      -0.514102757F                    // im
    }, { 1.8513552F,                   // re
      -0.524589717F                    // im
    }, { 1.84485364F,                  // re
      -0.534997642F                    // im
    }, { 1.83822465F,                  // re
      -0.545325041F                    // im
    }, { 1.83146954F,                  // re
      -0.555570245F                    // im
    }, { 1.82458925F,                  // re
      -0.565731823F                    // im
    }, { 1.81758475F,                  // re
      -0.575808227F                    // im
    }, { 1.81045723F,                  // re
      -0.585797906F                    // im
    }, { 1.80320752F,                  // re
      -0.59569931F                     // im
    }, { 1.79583693F,                  // re
      -0.605511F                       // im
    }, { 1.78834641F,                  // re
      -0.615231633F                    // im
    }, { 1.78073716F,                  // re
      -0.624859512F                    // im
    }, { 1.77301049F,                  // re
      -0.634393334F                    // im
    }, { 1.76516724F,                  // re
      -0.643831551F                    // im
    }, { 1.75720882F,                  // re
      -0.653172851F                    // im
    }, { 1.74913645F,                  // re
      -0.662415802F                    // im
    }, { 1.74095106F,                  // re
      -0.671559F                       // im
    }, { 1.73265433F,                  // re
      -0.680601F                       // im
    }, { 1.7242471F,                   // re
      -0.689540565F                    // im
    }, { 1.71573079F,                  // re
      -0.698376298F                    // im
    }, { 1.70710683F,                  // re
      -0.707106769F                    // im
    }, { 1.6983763F,                   // re
      -0.715730786F                    // im
    }, { 1.68954062F,                  // re
      -0.724247098F                    // im
    }, { 1.680601F,                    // re
      -0.732654274F                    // im
    }, { 1.67155898F,                  // re
      -0.740951121F                    // im
    }, { 1.66241574F,                  // re
      -0.749136388F                    // im
    }, { 1.65317285F,                  // re
      -0.757208824F                    // im
    }, { 1.64383149F,                  // re
      -0.765167236F                    // im
    }, { 1.63439333F,                  // re
      -0.773010433F                    // im
    }, { 1.62485957F,                  // re
      -0.780737221F                    // im
    }, { 1.61523163F,                  // re
      -0.78834641F                     // im
    }, { 1.60551095F,                  // re
      -0.795836926F                    // im
    }, { 1.59569931F,                  // re
      -0.803207517F                    // im
    }, { 1.58579791F,                  // re
      -0.81045717F                     // im
    }, { 1.57580829F,                  // re
      -0.817584813F                    // im
    }, { 1.56573176F,                  // re
      -0.824589252F                    // im
    }, { 1.55557024F,                  // re
      -0.831469595F                    // im
    }, { 1.54532504F,                  // re
      -0.838224709F                    // im
    }, { 1.5349977F,                   // re
      -0.84485358F                     // im
    }, { 1.52458978F,                  // re
      -0.851355195F                    // im
    }, { 1.5141027F,                   // re
      -0.857728601F                    // im
    }, { 1.50353837F,                  // re
      -0.863972843F                    // im
    }, { 1.49289823F,                  // re
      -0.870086968F                    // im
    }, { 1.48218369F,                  // re
      -0.876070082F                    // im
    }, { 1.47139668F,                  // re
      -0.881921232F                    // im
    }, { 1.46053874F,                  // re
      -0.887639642F                    // im
    }, { 1.44961131F,                  // re
      -0.893224299F                    // im
    }, { 1.43861628F,                  // re
      -0.898674488F                    // im
    }, { 1.42755508F,                  // re
      -0.903989315F                    // im
    }, { 1.41642952F,                  // re
      -0.909167945F                    // im
    }, { 1.40524137F,                  // re
      -0.914209723F                    // im
    }, { 1.39399207F,                  // re
      -0.919113874F                    // im
    }, { 1.38268352F,                  // re
      -0.923879504F                    // im
    }, { 1.37131715F,                  // re
      -0.928506076F                    // im
    }, { 1.35989499F,                  // re
      -0.932992816F                    // im
    }, { 1.34841871F,                  // re
      -0.937339F                       // im
    }, { 1.33688986F,                  // re
      -0.941544056F                    // im
    }, { 1.32531035F,                  // re
      -0.945607305F                    // im
    }, { 1.31368172F,                  // re
      -0.949528158F                    // im
    }, { 1.30200601F,                  // re
      -0.953306F                       // im
    }, { 1.29028463F,                  // re
      -0.956940353F                    // im
    }, { 1.27851963F,                  // re
      -0.960430503F                    // im
    }, { 1.26671278F,                  // re
      -0.963776052F                    // im
    }, { 1.25486565F,                  // re
      -0.966976464F                    // im
    }, { 1.24298024F,                  // re
      -0.970031261F                    // im
    }, { 1.23105812F,                  // re
      -0.972939968F                    // im
    }, { 1.21910119F,                  // re
      -0.975702107F                    // im
    }, { 1.20711136F,                  // re
      -0.97831738F                     // im
    }, { 1.19509029F,                  // re
      -0.980785251F                    // im
    }, { 1.1830399F,                   // re
      -0.983105481F                    // im
    }, { 1.17096186F,                  // re
      -0.985277653F                    // im
    }, { 1.15885818F,                  // re
      -0.987301409F                    // im
    }, { 1.14673042F,                  // re
      -0.989176512F                    // im
    }, { 1.13458073F,                  // re
      -0.990902662F                    // im
    }, { 1.12241066F,                  // re
      -0.992479563F                    // im
    }, { 1.11022222F,                  // re
      -0.993907F                       // im
    }, { 1.0980171F,                   // re
      -0.99518472F                     // im
    }, { 1.08579731F,                  // re
      -0.996312618F                    // im
    }, { 1.07356453F,                  // re
      -0.997290432F                    // im
    }, { 1.06132078F,                  // re
      -0.998118103F                    // im
    }, { 1.04906774F,                  // re
      -0.99879545F                     // im
    }, { 1.03680718F,                  // re
      -0.999322414F                    // im
    }, { 1.02454126F,                  // re
      -0.999698818F                    // im
    }, { 1.01227152F,                  // re
      -0.999924719F                    // im
    } };

  ix = 0;
  for (i = 0; i < 256; i++) {
    iDelta2 = bitrevIndex[i] - 1;
    y[iDelta2].re = x[ix];
    y[iDelta2].im = x[ix + 1];
    ix += 2;
  }

  for (i = 0; i <= 254; i += 2) {
    temp_re = y[i + 1].re;
    temp_im = y[i + 1].im;
    y[i + 1].re = y[i].re - y[i + 1].re;
    y[i + 1].im = y[i].im - y[i + 1].im;
    y[i].re += temp_re;
    y[i].im += temp_im;
  }

  ix = 2;
  iDelta2 = 4;
  k = 64;
  iheight = 253;
  while (k > 0) {
    int istart;
    int temp_re_tmp;
    for (i = 0; i < iheight; i += iDelta2) {
      temp_re_tmp = i + ix;
      temp_re = y[temp_re_tmp].re;
      temp_im = y[temp_re_tmp].im;
      y[temp_re_tmp].re = y[i].re - temp_re;
      y[temp_re_tmp].im = y[i].im - temp_im;
      y[i].re += temp_re;
      y[i].im += temp_im;
    }

    istart = 1;
    for (j = k; j < 128; j += k) {
      int ihi;
      temp2_re = fv[j];
      temp2_im = fv1[j];
      i = istart;
      ihi = istart + iheight;
      while (i < ihi) {
        temp_re_tmp = i + ix;
        temp_re = temp2_re * y[temp_re_tmp].re - temp2_im * y[temp_re_tmp].im;
        temp_im = temp2_re * y[temp_re_tmp].im + temp2_im * y[temp_re_tmp].re;
        y[temp_re_tmp].re = y[i].re - temp_re;
        y[temp_re_tmp].im = y[i].im - temp_im;
        y[i].re += temp_re;
        y[i].im += temp_im;
        i += iDelta2;
      }

      istart++;
    }

    k /= 2;
    ix = iDelta2;
    iDelta2 += iDelta2;
    iheight -= ix;
  }

  temp_re = y[0].re;
  temp_im = y[0].im;
  y_im = -y[0].re + y[0].im;
  y_re = y[0].re;
  temp2_re = -y[0].im;
  y[0].re = 0.5F * ((y[0].re - (-y[0].im)) + (y_re - temp2_re));
  y[0].im = 0.5F * (y_im + (y_re + temp2_re));
  temp2_re = temp_re - temp_im;
  y[256].re = 0.5F * (temp2_re + temp2_re);
  y[256].im = 0.5F * ((temp_re + temp_im) + (-temp_re + -temp_im));
  for (i = 0; i < 127; i++) {
    temp_re = y[i + 1].re;
    temp_im = y[i + 1].im;
    ix = b_iv[i + 1];
    k = ix - 1;
    temp2_re = y[k].re;
    temp2_im = y[k].im;
    y_im = y[i + 1].re * reconVar1[i + 1].im + y[i + 1].im * reconVar1[i + 1].re;
    y[i + 1].re = 0.5F * ((y[i + 1].re * reconVar1[i + 1].re - y[i + 1].im *
      reconVar1[i + 1].im) + (temp2_re * reconVar2[i + 1].re - -temp2_im *
      reconVar2[i + 1].im));
    y[i + 1].im = 0.5F * (y_im + (temp2_re * reconVar2[i + 1].im + -temp2_im *
      reconVar2[i + 1].re));
    y[i + 257].re = 0.5F * ((temp_re * reconVar2[i + 1].re - temp_im *
      reconVar2[i + 1].im) + (temp2_re * reconVar1[i + 1].re - -temp2_im *
      reconVar1[i + 1].im));
    y[i + 257].im = 0.5F * ((temp_re * reconVar2[i + 1].im + temp_im *
      reconVar2[i + 1].re) + (temp2_re * reconVar1[i + 1].im + -temp2_im *
      reconVar1[i + 1].re));
    y[k].re = 0.5F * ((temp2_re * reconVar1[k].re - temp2_im * reconVar1[k].im)
                      + (temp_re * reconVar2[k].re - -temp_im * reconVar2[k].im));
    y[k].im = 0.5F * ((temp2_re * reconVar1[k].im + temp2_im * reconVar1[k].re)
                      + (temp_re * reconVar2[k].im + -temp_im * reconVar2[k].re));
    iDelta2 = ix + 255;
    y[iDelta2].re = 0.5F * ((temp2_re * reconVar2[k].re - temp2_im * reconVar2[k]
      .im) + (temp_re * reconVar1[k].re - -temp_im * reconVar1[k].im));
    y[iDelta2].im = 0.5F * ((temp2_re * reconVar2[k].im + temp2_im * reconVar2[k]
      .re) + (temp_re * reconVar1[k].im + -temp_im * reconVar1[k].re));
  }

  temp_re = y[128].re;
  temp_im = y[128].im;
  temp2_re = y[128].re * 0.0F;
  temp2_im = y[128].im * 0.0F;
  y_re = y[128].re;
  y_im = -y[128].im;
  y[128].re = 0.5F * ((temp2_re - temp2_im) + (y_re * 2.0F - y_im * 0.0F));
  y[128].im = 0.5F * ((temp2_re + temp2_im) + (y_re * 0.0F + y_im * 2.0F));
  temp2_re = -temp_im * 0.0F;
  y[384].re = 0.5F * ((temp_re * 2.0F - temp_im * 0.0F) + (temp_re * 0.0F -
    temp2_re));
  y[384].im = 0.5F * ((temp_re * 0.0F + temp_im * 2.0F) + (temp_re * 0.0F +
    temp2_re));
}

//
// File trailer for FFTImplementationCallback.cpp
//
// [EOF]
//
